草庐IT

javascript - 使用 Laravel 的 Ajax Post 错误 422

全部标签

ruby - 在 Rack::Test 中使用 Cookie

我正在尝试使用Rack::Test为我的Sinatra应用程序编写RSpec测试。我不明白如何使用cookie。例如,如果我的应用程序设置了cookie(不是通过:session),我如何检查该cookie是否设置正确?另外,我如何使用该cookie发送请求? 最佳答案 Rack::Test保留一个cookiejar,该cookiejar在请求期间持续存在。您可以使用rack_mock_session.cookies访问它。假设您有这样的处理程序:get'/cookie/set'doresponse.set_cookie"foo",

ruby - 如何在 Ruby 中使用信号阻塞

如何在Ruby中阻止某些信号?(即sigprocmask,如此处所述:http://www.chemie.fu-berlin.de/chemnet/use/info/libc/libc_21.html#SEC371)这是我的示例代码pid=forkdotrap('INT')doputs"Gracefulshutdown..."puts"goodbye"exit0endloopdothis_could_be_interruptedsomething_that_must_not_be_interruptedthis_could_be_interrupted_tooendendsleep5P

ruby - Rspec 模拟错误 : wrong number of arguments

我正在尝试使用Rspec对StripeAPI进行stub,但我遇到了一个问题。这是我的代码的样子:Stripe::Customer.should_receive(:create).with(any_args).and_raise(Stripe::CardError)这是我遇到的错误:Failure/Error:Stripe::Customer.should_receive(:create).with(any_args).and_raise(Stripe::CardError)ArgumentError:wrongnumberofarguments(0for3..6)

ruby - 使用 Capybara 下载 CSV

对于rspec测试,我需要下载CSV文件格式的报告并验证给定的信息。当点击一个按钮时,报告从网页生成。浏览器保存对话框打开,提供打开或保存选项。如何使用rspec和Capybara获取要保存到计算机的文件? 最佳答案 我一直在为此使用MiniTest::Spec并使用webkit-driver完成它,但它应该毫无问题地转换为RSpec,因为它基本上只是capybara的功能:scenario"downloadoverview"dowithin"aside#actions"doclick_link"Downloadoverview"e

ruby - 使用递归正则表达式(如 perl)在 Ruby 中匹配平衡括号

我一直在寻找一种方法来匹配正则表达式中的平衡括号,并在Perl中找到了一种使用递归正则表达式的方法:my$re;$re=qr{\((?:(?>[^()]+)#Non-parenswithoutbacktracking|(??{$re})#Groupwithmatchingparens)*\)}x;来自perlregularexpressionsite.有没有办法用Ruby或类似的语言做到这一点?更新:对于那些感兴趣的人,这里有一些有趣的链接:Onigurumamanual-来自Sawa的回答。PragmaticProgrammers'Ruby1.9RegularExpressionsS

ruby-on-rails - 如何在 Rails 之外使用 ActiveRecord?

我正在构建一个基于六边形架构的Rails应用程序。我的一个适配器是存储适配器(作为gem维护),它管理对数据库的访问并为Rails应用程序提供简单的接口(interface)以在数据库中存储和查询数据。我想在这个gem中使用ActiveRecord和所有rake任务(创建、迁移、删除、回滚)来管理数据库。我如何在rails之外使用AR,但要处理所有rake任务? 最佳答案 像安装任何其他gem一样安装它geminstallactiverecord然后你像这样配置它ActiveRecord::Base.establish_connec

ruby-on-rails - 模拟 rspec 中的错误/异常(不仅仅是它的类型)

我有一段代码是这样的:defsome_methodbegindo_some_stuffrescueWWW::Mechanize::ResponseCodeError=>eife.response_code.to_i==503handle_the_situationendendend我想测试ife.response_code.to_i==503部分发生了什么。我可以模拟do_some_stuff以抛出正确类型的异常:whatever.should_receive(:do_some_stuff).and_raise(WWW::Mechanize::ResponseCodeError)但是我

ruby-on-rails - 在 Ruby 中返回 true 或错误消息

我想知道编写这样的函数是好的还是坏的形式。deftest(x)ifx==1returntrueelsereturn"Error:xisnotequaltoone."endend然后为了使用它,我们做这样的事情:result=test(1)ifresult!=trueputsresultendresult=test(2)ifresult!=trueputsresultend它只显示第二次调用测试的错误消息。我正在考虑这样做,因为在一个Rails项目中,我在我的Controller代码中工作,我调用模型的实例方法,如果出现问题,我希望模型将错误消息返回给Controller和Control

ruby - 如何获得 JavaScript 样式的哈希访问?

我知道ActiveSupport提供了此功能。h=ActiveSupport::OrderedOptions.newh.boy='John'h.girl='Mary'h.boy#=>'John'h.girl#=>'Mary'但是我已经有一个很大的散列,我想使用点表示法访问该散列。这是我尝试过的:large_hash={boy:'John',girl:'Mary'}h=ActiveSupport::OrderedOptions.new(large_hash)h.boy#=>nil那没有用。我怎样才能使这项工作。我正在使用ruby1.9.2更新:抱歉,我应该提到我不能使用openstruc

ruby-on-rails - 如何在带有 bundler 的项目中使用 rails 分支中的分支

我有一个railsrepo的fork在github上,我有一个基于rails-2-3-stable分支的分支。我想根据Rails2.3.10和我的应用程序一起开发一些更改。我们正在使用bundler,并且该应用程序使用SVN进行版本控制。在Rails的github分支中使用我的分支并跨机器共享它的最干净的方法是什么?一种方法是这样的:howdoIinstalledgerails?这可行,但感觉不够干净,因为我们必须在存储库更改时手动更新销售版本,并且我们必须将git存储库检入svn。我已经在Gemfile中尝试了这个的变体:gem'rails','2.3.10',:git=>'git: